Packet data networks convey information from an originating device to a specified addressee by incorporating the information into packets. Each packet contains a preamble (control data) and information (message data). The preamble typically includes packet network control data, synchronization information and addressee destination information. The message information portion contains the originating device's message.
Packets containing such originating device messages are not always communicated directly to the destination addressee. As is known, these packets may be relayed by several intermediate relay stations before reaching their final destination. As the transmission speeds of packet networks increase, it becomes increasingly important for relay stations to be able to efficiently handle and process these information packets.
On occasion the information (message data) portion of a data packet originated by an originating device is too large to fit into the message data portion of packets utilized by intermediate relay stations. In such instances, the original data packet must be separated into N fragments prior to transmission to or from said intermediate station. Upon receipt by a receiving device, such as, for example, another relay station or the destination device, each of the N fragments must be reassembled in the correct order in order to recreate the original data packet.
Packet reassembly methods are known in the art. Typically such methods are processor intensive operations which require system processing resources to evaluate each fragmented packet as received by a receiving device, in order to validate correct reception, determine whether all fragments have been received, store each fragment in memory and reformulate new fragments corresponding to the received fragments, prior to reconstruction of the original data packet. While this approach is quite efficient from a packet reconstruction stand point, it is nonetheless demanding upon system processing resources which must be interrupted upon receipt of each and every fragment. In many applications, such as a wireless local area network (LAN), where system processing resources are already heavily taxed, the increased level of processor demand associated with packet reassembly may well exceed the practical limits of many of the currently available processor technologies.
An alternative method for packet reassembly which seeks to avoid the shortcomings associated with continual processor involvement is disclosed pursuant to the above cited and co-pending patent application which suggests that much of the packet reassembly process may be performed by packet reassembly hardware (e.g., gate arrays or application specific integrated circuits). According to this approach, processor intervention is typically only required upon receipt of the first and the last fragment which compose the original data packet. While this approach minimizes demand upon system processing resources, efficient packet reconstruction may suffer if and when fragmented packets become lost, corrupted or otherwise unintelligible and therefore require retransmission from the source. As will be appreciated, reduced processor involvement during packet handling may lead to inefficiencies in notifying a source device that various packets require retransmission.
It would be extremely advantageous therefore to provide an improved method for data packet acknowledgement within a packet data network which assures the delivery of all fragmented packets requiring reassembly and avoids the shortcomings set forth herein above.